package br.com.vilababy.sigvb.validadores;

import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.validator.FacesValidator;
import javax.faces.validator.Validator;
import javax.faces.validator.ValidatorException;

import br.com.vilababy.sigvb.SIGVBUtil;
import br.com.vilababy.sigvb.constantes.SIGVBEnum;

@FacesValidator("loginValidator")
public class LoginValidator implements Validator {

	/**
     * @author Diego Patrick da Silva Santos 
     */
	@Override
	public void validate(FacesContext context, UIComponent component, Object objeto) throws ValidatorException {
		FacesMessage mensagem = null;
		
		if(component.getId().equals(SIGVBEnum.ID_USUARIO.getValor()) && ((String) objeto).isEmpty()) {
			mensagem = SIGVBUtil.retornarMensagemErro(SIGVBUtil.getValorMensagem(SIGVBEnum.FALHA_AUTENTICACAO.getValor()), SIGVBUtil.getValorMensagem(SIGVBEnum.USUARIO_INFORME.getValor()));
		} else if (component.getId().equals(SIGVBEnum.ID_SENHA.getValor()) && ((String) objeto).isEmpty()) {
			mensagem = SIGVBUtil.retornarMensagemErro(SIGVBUtil.getValorMensagem(SIGVBEnum.FALHA_AUTENTICACAO.getValor()), SIGVBUtil.getValorMensagem(SIGVBEnum.SENHA_INFORME.getValor()));
		}
		
		SIGVBUtil.tratarErroValidacao(mensagem);
	}
	
}
